import  axios from 'axios'
import { getToken,clearToken } from './token'
import { history } from './history'
//request--增强版的axios
const request=axios.create({
      baseURL:'http://geek.itheima.net/v1_0',
      timeout:'5000'
})
request.interceptors.request.use((config)=>{
    // const token=getToken()
    // if(token){
    //     config.headers.Authorization=`Bearer ${token}`
    // }
    const token = getToken()
    if (token) {
      config.headers.Authorization = `Bearer ${token}`
    }
    return config
},error=>{
    if (error.response.status === 401) {
        // 删除token
        clearToken()
        // 跳转到登录页
        history.push('/login')
      }
    return Promise.reject(error)
})

request.interceptors.response.use((response)=>{
 return response.data
},error=>{
    if (error.response.status === 401) {
        // 跳回到登录 reactRouter默认状态下 并不支持在组件之外完成路由跳转
        // 需要自己来实现
        history.push('/login')
    }
    return Promise.reject(error)
})
export {request}